<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 替换文字
        // 练习1
        // let str = "红鲤鱼yu绿鲤鱼yu驴";
        // 把 "yu" 替换成 "与"

        // 使用正则
        // replace 会不会改变原字符串
        // str = str.replace(/yu/g, "与");
        // console.log(str);


        // 不使用正则
        // for (let i = 0; i < str.length; i++) {
        //     if (str[i] == "y" && str[i + 1] == "u") {
        //         // console.log(str[i], str[i + 1]);
        //         // 修改原字符串
        //         // str[i]+str[i + 1] == "yu"
        //         str = str.replace(str[i] + str[i + 1], "与")
        //     }
        // };
        // console.log(str);

        // 练习2
        // let str1 = "get-element-by-id";
        // //  改成驼峰命名法  -----》 getElementById
        // // 使用正则
        // // 定义一个正则表达式
        // let reg = new RegExp("-", "g");
        // for (let i = 0; i < str1.length; i++) {
        //     // 判断字符串是否支持正则
        //     if (reg.test(str1.charAt(i))) {
        //         // 替换
        //         // -e、 -b、 -i, i+1字母转大写
        //         str1 = str1.replace(str1.charAt(i) + str1.charAt(i + 1), str1.charAt(i + 1).toUpperCase())
        //     }
        // };
        // console.log(str1);


        // 练习3
        // 检测字符串是否以"QQ"开头
        let str3 = "QQ123456";
        let reg3 = new RegExp("^QQ");
        let res3 = reg3.test(str3);
        console.log(res3);

        // 检测字符串是否以".com"结尾
        let str4 = "http://baidu.com";
        let reg4 = new RegExp(".com$");
        let res4 = reg4.test(str4);
        console.log(res4);

        // 检测字符串是否出现至少一次"6"
        let str5 = "13729173921796";
        let reg5 = new RegExp("6+");
        let res5 = reg5.test(str5);
        console.log(res5);
        // [0 - 9]、[1 - 5]
        // [a - z]、[b - e]

        // 1 | 2 | 3 | 4 | 5.... | 9
        // a | b | c..... | z

        // 检测字符串是否出现"777"、"666"、"88888"结尾;
        let str6 = "粤A88880";
        let reg6 = new RegExp("(777|666|88888)$");
        let res6 = reg6.test(str6);
        console.log(res6);

        // 检测字符串是否必出"66666";
        let str7 = "粤G66666";
        let reg7 = new RegExp("6{5}");
        let res7 = reg7.test(str7);
        console.log(res7);

        // 练习4
        // 检测字符串必须以数字开头
        let str8 = "6666Hy";
        // let reg8 = new RegExp("^[0-9]");
        let reg8 = new RegExp("^\\d");
        let res8 = reg8.test(str8);
        console.log(res8);


        // let str = "abcG"
        // str.match(/g/i)

        let str = "1 23\n 4";
        let reg = /23$/m; //匹配多行的结束字符
        console.log(str.match(reg));


        // 练习5(作业)
        // (1)限制表单输入4-11位数字, 
        // (条件: 只能出现数字)

        // (2)限制表单输入4-11位字符串 
        // (条件: 数字、大写字母[至少出现两个])

        // (3)限制表单输入格式为qq邮箱
        // (条件: 数字[5-10] + @qq.com)
    </script>
</body>

</html>